1. Statement of the Technical Field
The present invention relates to the field of network communications and more particularly to a multichannel SOCKS server configuration.
2. Description of the Related Art
Internet security increasingly has become the focus of information technology professionals who participate in globally accessible computer networks. In particular, with the availability and affordability of broadband Internet access, many computers in the corporate Intranet now enjoy high-speed access to services on the Internet. Notwithstanding, continuous, high-speed access is not without its price. Specifically, those computers and computer networks which heretofore had remained disconnected from the security risks of the Internet now have become the primary target of malicious Internet hackers, crackers and script kiddies, collectively referred to as “malicious hackers”.
In response to the risks of global network connectivity, several solutions have been developed which inherently restrict unfettered access between computing devices in the corporate Intranet, and computing devices in the global Internet. For instance, proxy servers have been positioned with the corporate Intranet where the proxy servers can limit data communications connectivity between external HTTP-based content providers and local Web clients. Other proxy type solutions include other types of data transfer protocols, such as FTP, telnet, and the like. For example, the SOCKS proxy protocol can be applied not only to HTTP-based content providers, but to other data transfer protocols such as FTP.
SOCKS is an Internet Engineering Task Force (IETF) standard for a generic proxy protocol for TCP/IP based networking applications. As SOCKS has been defined in RFC 1928, the SOCKS protocol provides for a flexible framework for developing secure communications by easily integrating other security technologies. Notably, SOCKS includes two components: the SOCKS server and the SOCKS client. The SOCKS server is implemented at the application layer, while the SOCKS client is implemented between the application and transport layers. The basic purpose of the SOCKS protocol is to enable hosts on one side of the SOCKS server to gain access to hosts on the other side of the SOCKS server without requiring direct IP-reachability.
In operation, when an application client requires connectivity to an application server, the application client first can connect to a SOCKS proxy server. The proxy server subsequently can connect to the application server on behalf of the application client, and can relay data between the application client and the application server. As will be apparent to one skilled in the art, in a conventional SOCKS proxy implementation, the SOCKS server appears to the application server as the application client.
Because of its simplicity and flexibility, SOCKS has been used as a network firewall, generic application proxy, in virtual private networks, and in extranet applications. Notably advantages of a SOCKS proxy implementation include transparent network access across multiple proxy servers, easy deployment of authentication and encryption methods, rapid deployment of new network applications and simple network security policy management. Yet, the conventional SOCKS proxy implementation cannot provide a comprehensive solution to address all enterprise computing communications topologies.
For example, while the conventional SOCKS proxy implementation addresses the need for a client computing device within the Intranet to access computing devices in the global Internet, the conventional SOCKS proxy likewise does not handle the inverse situation where an external client in the Internet requires access to computing resources within the Intranet. However, the advent of pervasive computing and the near-ubiquity of mobile computing devices has given rise to an entirely new set of data connectivity needs. In particular, not only must pervasive computing devices have secure, authorized access to Intranet computing resources, but also the computing resources must smoothly handle unique communications issues associated with pervasive computing, including roaming and bandwidth limitations.